package com.macaline.framemarker.dataBase.framework.builder;

import com.macaline.framemarker.dataBase.framework.bean.Column;
import com.macaline.framemarker.dataBase.framework.bean.Table;

import java.util.List;

/**
 * 表结构构造器抽象类
 */
public abstract class AbstractTableBuilder {

    /**
     * 构建表结构配置
     * @return
     */
    public abstract Table build();

    public abstract AbstractTableBuilder tabName(String tabName);


    /**
     * 设置表字段
     */
    public abstract AbstractTableBuilder column(Column column);


    /**
     * 设置表字段
     * @param columnList
     */
    public abstract void columns(List<Column> columnList);

    /**
     * 表注释
     * @param comment
     */
    public abstract AbstractTableBuilder comment(String comment);




}
